///**
// * 
// */
//package com.desksoft.ecommerce.handler.event;
//
//import java.util.Iterator;
//
//import org.springframework.context.ApplicationEvent;
//import org.springframework.context.ApplicationListener;
//import org.springframework.context.event.AbstractApplicationEventMulticaster;
//import org.springframework.core.task.SimpleAsyncTaskExecutor;
//import org.springframework.core.task.TaskExecutor;
//
///***************************************
// * <pre>
// * 版权所有：杭州迪科软件 保留所有权利
// * 创建日期: Jul 31, 2012
// * 创建作者：yejw
// * 文件名称：AsyncApplicationEventMulticaster.java
// * 版本：1.0
// * 功能：
// * 最后修改时间：Jul 31, 2012
// * 修改记录：
// * </pre>
// *****************************************/
//public class AsyncApplicationEventMulticaster extends AbstractApplicationEventMulticaster { 
//	
//	/**
//	 * 
//	 */
//    private TaskExecutor taskExecutor = new SimpleAsyncTaskExecutor();  
//  
//    /* (non-Javadoc)
//	 * @see org.springframework.context.event.ApplicationEventMulticaster#multicastEvent(org.springframework.context.ApplicationEvent)
//	 */
//	@SuppressWarnings("rawtypes")
//	@Override
//	public void multicastEvent(final ApplicationEvent event) {
//		for (Iterator<ApplicationListener> it = getApplicationListeners(event).iterator(); it.hasNext();) {  
//            final ApplicationListener listener =  it.next();  
//            getTaskExecutor().execute(new Runnable() {  
//                @SuppressWarnings("unchecked")
//				public void run() {  
//                    listener.onApplicationEvent(event);  
//                }  
//            });  
//        }  
//	}  
//	
//	/**
//	 * @return the taskExecutor
//	 */
//	public TaskExecutor getTaskExecutor() {
//		return taskExecutor;
//	}
//
//	/**
//	 * @param taskExecutor the taskExecutor to set
//	 */
//	public void setTaskExecutor(TaskExecutor taskExecutor) {
//		this.taskExecutor = (taskExecutor != null ? taskExecutor : new SimpleAsyncTaskExecutor());  
//	}
//
//}  
